/*
 *
 *  This file is part of the SIRIUS library for analyzing MS and MS/MS data
 *
 *  Copyright (C) 2013-2020 Kai Dührkop, Markus Fleischauer, Marcus Ludwig, Martin A. Hoffman and Sebastian Böcker,
 *  Chair of Bioinformatics, Friedrich-Schilller University.
 *
 *  This library is free software; you can redistribute it and/or
 *  modify it under the terms of the GNU Lesser General Public
 *  License as published by the Free Software Foundation; either
 *  version 3 of the License, or (at your option) any later version.
 *
 *  This library is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 *  Lesser General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License along with SIRIUS. If not, see <https://www.gnu.org/licenses/lgpl-3.0.txt>
 */

package de.unijena.bioinf.ChemistryBase.chem.utils;

import de.unijena.bioinf.ChemistryBase.chem.MolecularFormula;

public class Contaminants {

    private static String[] FORMULAS = new String[]{
            "C2H4O2", "CN", "CH3CN", "C4H7NO2", "C3H7NO", "C6H14N2O2", "C25H54NCl", "C22H42O4", "C24H38O4", "C8H18O3", "C11H16O2", "C15H24O", "63Cu(I)", "65Cu(I)", "Cs", "C2D6OS", "C30H58O4S", "C10H30Si5O5", "C16H22O4", "C18H34O4", "C30H58O6S", "C30H58O5S", "C8H19N", "C10H10O4", "C7H10N2", "C2H6OS", "C34H72NCl", "C13H10O", "C38H80NCl", "C12H36Si6O6", "C20H60Si10O10", "C22H43NO", "H2CO2", "C16H48Si8O8", "I", "C35H62O3", "CH4O3S", "CH3OH", "C2H12O4", "C3H16O5", "C4H22O7", "C20H17O", "C16H33NO3", "C10H15NO2S", "C5H9NO", "C24H44N4O4", "C36H66N6O6", "C48H88N8O8", "C18H54Si9O9", "C18H35NO", "C18H34O2", "C16H32O2", "C22H47N2OCl", "C2H6O2", "C20H42O11", "C22H46O12", "C24H50O13", "C26H54O14", "C28H58O15", "C30H62O16", "C32H66O17", "C34H70O18", "C36H74O19", "C38H78O20", "C4H10O3", "C40H82O21", "C6H14O4", "C8H18O5", "C10H22O6", "C12H26O7", "C14H30O8", "C16H34O9", "C18H38O10", "C3HF5O2", "C10H15N", "H3PO4", "C8H6O4", "C8H4O3", "C3H8O2", "C30H62O11", "C33H68O12", "C36H74O13", "C39H80O14", "C42H86O15", "C45H92O16", "C48H98O17", "C51H104O18", "C54H110O19", "C57H116O20", "C60H122O21", "C6H14O3", "C9H20O4", "C12H26O5", "C15H32O6", "C18H38O7", "C21H44O8", "C24H50O9", "C27H56O10", "C3H6O2", "C2H3O2Na", "C2F3O2Na", "C18H37NO", "C18H36O2", "C36H76NCl", "H2SO4", "C16H36N", "C14H42Si7O7", "C13H28O2Sn", "C12H27N", "C12H27O4P", "C6H15N", "C2HO2F3", "C18H15O4P", "C18H15OP", "C9H21N", "C4H11NO3", "C16H26O2", "C34H62O11", "C36H66O12", "C38H70O13", "C40H74O14", "C42H78O15", "C44H82O16", "C46H86O17", "C48H90O18", "C50H94O19", "C52H98O20", "C54H102O21", "C18H30O3", "C20H34O4", "C22H38O5", "C24H42O6", "C26H46O7", "C28H50O8", "C30H54O9", "C32H58O10", "C34H68O11", "C36H72O12", "C38H76O13", "C40H80O14", "C42H84O15", "C44H88O16", "C46H92O17", "C48H96O18", "C50H100O19", "C52H104O20", "C54H108O21", "C18H36O3", "C20H40O4", "C22H44O5", "C24H48O6", "C26H52O7", "C28H56O8", "C30H60O9", "C32H64O10", "C17H28O2", "C35H64O11", "C37H68O12", "C39H72O13", "C41H76O14", "C43H80O15", "C45H84O16", "C47H88O17", "C49H92O18", "C51H96O19", "C53H100O20", "C55H104O21", "C19H32O3", "C21H36O4", "C23H40O5", "C25H44O6", "C27H48O7", "C29H52O8", "C31H56O9", "C33H60O10", "C17H34O2", "C35H70O11", "C37H74O12", "C39H78O13", "C41H82O14", "C43H86O15", "C45H90O16", "C47H94O17", "C49H98O18", "C51H102O19", "C53H106O20", "C55H110O21", "C19H38O3", "C21H42O4", "C23H46O5", "C25H50O6", "C27H54O7", "C29H58O8", "C31H62O9", "C33H66O10", "C19H15", "C38H74O16", "C40H78O17", "C42H82O18", "C44H86O19", "C46H90O20", "C48H94O21", "C50H98O22", "C52H102O23", "C54H106O24", "C56H110O25", "C58H114O26", "C60H118O27", "C62H122O28", "C64H126O29", "C66H130O30", "C68H134O31", "C70H138O32", "C72H142O33", "C74H146O34", "C76H150O35", "C78H154O36", "C80H158O37", "C82H162O38", "C42H82O16", "C44H86O17", "C46H90O18", "C48H94O19", "C50H98O20", "C52H102O21", "C54H106O22", "C56H110O23", "C58H114O24", "C60H118O25", "C62H122O26", "C64H126O27", "C66H130O28", "C68H134O29", "C70H138O30", "C72H142O31", "C74H146O32", "C76H150O33", "C78H154O34", "C80H158O35", "C82H162O36", "C84H166O37", "C86H170O38", "C44H86O16", "C46H90O17", "C48H94O18", "C50H98O19", "C52H102O20", "C54H106O21", "C56H110O22", "C58H114O23", "C60H118O24", "C62H122O25", "C64H126O26", "C66H130O27", "C68H134O28", "C70H138O29", "C72H142O30", "C74H146O31", "C76H150O32", "C78H154O33", "C80H158O34", "C82H162O35", "C84H166O36", "C86H170O37", "C88H174O38", "C44H84O16", "C46H88O17", "C48H92O18", "C50H96O19", "C52H100O20", "C54H104O21", "C56H108O22", "C58H112O23", "C60H116O24", "C62H120O25", "C64H124O26", "C66H128O27", "C68H132O28", "C70H136O29", "C72H140O30", "C74H144O31", "C76H148O32", "C78H152O33", "C80H156O34", "C82H160O35", "C84H164O36", "C86H168O37", "C88H172O38", "C13H24N2O", "C9H16N2", "C32H58N2O7S", "C10H7NO3"
    };

    private static MolecularFormula[] MOLECULAR_FORMULAS = new MolecularFormula[FORMULAS.length];

    static {
        for (int i=0; i < MOLECULAR_FORMULAS.length; ++i) {
            MOLECULAR_FORMULAS[i] = MolecularFormula.parseOrThrow(FORMULAS[i]);
        }
    }


}
